package com.ruoyi.biz.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.system.domain.SysUser;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.biz.mapper.BizDutyTypeMapper;
import com.ruoyi.biz.domain.BizDutyType;
import com.ruoyi.biz.service.IBizDutyTypeService;
import com.ruoyi.common.core.text.Convert;

/**
 * 值班班次类型Service业务层处理
 * 
 * @author ruoyi
 * @date 2021-09-01
 */
@Service("dutyTypeService")
public class BizDutyTypeServiceImpl implements IBizDutyTypeService 
{
    @Autowired
    private BizDutyTypeMapper bizDutyTypeMapper;

    /**
     * 查询值班班次类型
     * 
     * @param id 值班班次类型ID
     * @return 值班班次类型
     */
    @Override
    public BizDutyType selectBizDutyTypeById(Integer id)
    {
        return bizDutyTypeMapper.selectBizDutyTypeById(id);
    }

    /**
     * 查询值班班次类型列表
     * 
     * @param bizDutyType 值班班次类型
     * @return 值班班次类型
     */
    @Override
    public List<BizDutyType> selectBizDutyTypeList(BizDutyType bizDutyType)
    {
        return bizDutyTypeMapper.selectBizDutyTypeList(bizDutyType);
    }

    @Override
    public List<BizDutyType> selectBizDutyTypeList() {
        BizDutyType bizDutyType = new BizDutyType();
        SysUser     principal   = (SysUser) SecurityUtils.getSubject().getPrincipal();
        Long        userId      = principal.getUserId();
        bizDutyType.setUserId(userId.intValue());
        return bizDutyTypeMapper.selectBizDutyTypeList(bizDutyType);
    }

    /**
     * 新增值班班次类型
     * 
     * @param bizDutyType 值班班次类型
     * @return 结果
     */
    @Override
    public int insertBizDutyType(BizDutyType bizDutyType)
    {
        bizDutyType.setCreateTime(DateUtils.getNowDate());
        return bizDutyTypeMapper.insertBizDutyType(bizDutyType);
    }

    /**
     * 修改值班班次类型
     * 
     * @param bizDutyType 值班班次类型
     * @return 结果
     */
    @Override
    public int updateBizDutyType(BizDutyType bizDutyType)
    {
        bizDutyType.setUpdateTime(DateUtils.getNowDate());
        return bizDutyTypeMapper.updateBizDutyType(bizDutyType);
    }

    /**
     * 删除值班班次类型对象
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    @Override
    public int deleteBizDutyTypeByIds(String ids)
    {
        return bizDutyTypeMapper.deleteBizDutyTypeByIds(Convert.toStrArray(ids));
    }

    /**
     * 删除值班班次类型信息
     * 
     * @param id 值班班次类型ID
     * @return 结果
     */
    @Override
    public int deleteBizDutyTypeById(Integer id)
    {
        return bizDutyTypeMapper.deleteBizDutyTypeById(id);
    }

    @Override
    public Integer checkIfExist(BizDutyType param) {
        return bizDutyTypeMapper.checkIfExist( param);
    }
}
